/**
 * 
 */
package com.nari.heatshare.service;

import com.nari.coreframe.service.IGenericService;
import com.nari.heatshare.model.IHeatMeterTypeParamDict;
import com.nari.platform.model.PageCond;
import com.nari.platform.model.ResponseMsg;
import com.nari.platform.model.ResultWithPageCond;

/**
 * 
 * @author Xiaopeng
 * @date 2014-6-23
 */
public interface IHeatMeterTypeParamDictService extends IGenericService<IHeatMeterTypeParamDict, String> {

	/**
	 * 分页查询热表型号参数配置列表
	 * @param typeCode 热量表型号编号
	 * @param pageCond
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2014-6-23
	 */
	public ResultWithPageCond<IHeatMeterTypeParamDict> queryTypeParamPage(String typeCode, 
			PageCond pageCond) throws Exception;
	
	/**
	 * 新增或修改型号参数配置
	 * @param typeParam
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2014-6-23
	 */
	public ResponseMsg saveOrUpdateTypeParamDict(IHeatMeterTypeParamDict typeParam) throws Exception;
	
	/**
	 * 通过热量表型号编号查询其型号参数配置
	 * @param typeCode
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2014-6-24
	 */
	public IHeatMeterTypeParamDict queryTypeParamByCode(String typeCode) throws Exception;
	
	/**
	 * 根据型号编号统计型号参数的配置个数
	 * @param typeCode
	 * @param typeParamUID
	 * @return
	 * @throws Exception
	 * @author Xiaopeng
	 * @date 2014-6-23
	 */
	public int countTypeParamByTypeCode(String typeCode, String typeParamUID) throws Exception;
}
